perm filename NONMON[S84,JMC] blob sn#749874 filedate 1984-04-11 generic text, type C, neo UTF8
COMMENT āŠ—   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	.require "memo.pub[let,jmc]" source
C00005 ENDMK
CāŠ—;
.require "memo.pub[let,jmc]" source;
.cb Who did what in non-monotonic reasoning
.<<nonmon[s84,jmc]		Varieties of non-monotonic reasoning>>

	People have always supplemented ordinary monotonic reasoning with
non-monotonic reasoning.  The use of non-monotonic reasoning in AI dates
at least from Micro-Planner's THNOT of the early 70s.  Prolog's NOT is
also non-monotonic.  Both of these are based on concluding that a
proposition is false if an attempt to prove it has failed.  Both
require the user to specify the attempt to prove the formula.  Neither
was provided originally with any definite semantics.

	The frame systems generally allow the user to provide
default values for slots.  Jon Doyle's reason maintenance system
embodied in a paper called "Truth Maintenance" was more general,
It allowed rules that inferred a particular sentences provided
certain other sentences were "in" and certain others were "out".

	The second phase of the study of non-monotonic reasoning
began in the second half of the 70s with simultaneous independent
attempts to formalize the concepts and culminated in the special
issue of %2Artificial Intelligence%1 of 1980 April devoted to
non-monotonic logic.  The three major attempts were the
Non-monotonic Logic paper of Drew McDermott and Jon Doyle, the
Logic of Defaults by Raymond Reiter, and my Circumscription.
I'll not discuss circumscription in this lecture, since my
next lecture will be entirely devoted to its present state.

	McDermott and Doyle treated non-monotonic reasoning
by adding a modal operator  M  denoting possibility to ordinary
propositional or predicate logic.